//
//  RDABTestInfo.h
//  RDelivery
//
//  Created by selmerzhang on 2021/8/5.
//  Copyright © 2021 Tencent. All rights reserved.
//

#ifndef RDABTestInfo_h
#define RDABTestInfo_h

NS_ASSUME_NONNULL_BEGIN

@class RDGrayPolicyInfo;

/// 实验信息类
@interface RDABTestInfo : NSObject <NSSecureCoding>

/** 实验ID */
@property(nonatomic, assign) int32_t sGrayPolicyId;

/** 实验名称 */
@property(nonatomic, copy) NSString *expName;

/** 命中桶号 */
@property(nonatomic, assign) int32_t bucket;

/** 层桶数 */
@property(nonatomic, assign) int32_t moduleBuckets;

/** 实验比率 */
@property(nonatomic, assign) float percentage;

/** 实验参数 */
@property(nonatomic, copy) NSDictionary<NSString*, NSString*> *params;

/** 实验版本key */
@property(nonatomic, copy) NSString *assignment;

/// 使用实验json结构体初始化一个TabABTestInfo对象
/// @param grayPolicyInfo pb 实验结构体
- (instancetype)initWithGrayPolicyInfo:(RDGrayPolicyInfo *)grayPolicyInfo;

@end

NS_ASSUME_NONNULL_END

#endif /* RDABTestInfo_h */
